#循环输出9*9乘法表
#9*9乘法表的实现

#1.把乘法表左上角考虑成（1，1）坐标点，每个乘法表达式等于row*col
#2.输出是一行一行输出的每一行输出后需要换行
#3.m每一行的行号，就是列从1-行号的循环
#4.格式摆正:为了好看，格式化输出使用占位

for row in range(1,10):
    for col in range(1,row+1):
        print('{:}*{:}={:<4}'.format(row,col,row*col),end=' ')
    print('')
print('=' * 80)
for row in range(9,0,-1):
    for col in range(1,row+1):
        print('{}*{}={:<4}'.format(row,col,row*col),end=' ')
    print('')
#第二种效果图
for i in range(1,10):
    for k in range(1,10-i):
        print(end="         ")
    for j in range(i,0,-1):
        print('{}*{}={:<4}'.format (i,j,i*j),end=" ")
    print("")
print('=' * 80)
for i in range(9,0,-1):
    for k in range(1,10-i):
        print(end="         ")
    for j in range(i,0,-1):
        print('{}*{}={:<4}'.format (i,j,i*j),end=" ")
    print("")



#while循环输出9*9乘法表
#第一种效果图

row = 1
while row < 10:  #外层循环
    col = 1
    # 内层循环
    while col <= row: #  外层循环一次，内层循环多次，（且次数不超过外层循环的次数）
        print('{}*{}={:<4}'.format(col,row,row*col) ,end=' ')
        col+=1
    row+=1
    print()
print('=' * 80)

row = 9
while 0 <row < 10:  #外层循环
    col = 1
    # 内层循环
    while col <= row: #  外层循环一次，内层循环多次，（且次数不超过外层循环的次数）
        print('{}*{}={:<4}'.format(col,row,col*row) ,end=' ')
        col+=1
    row-=1
    print()
#第二种形式
i = 1
while i<=9:
    k = 1
    while k<=9-i:
        print(end=' '*8)
        k += 1
    j = i
    while (j>=1):
        print("{}*{}={:<3}".format(i,j,i*j),end = ' ')
        j -= 1
    i += 1
    print("")
print('=' * 80)

j = 9
while j > 0:
    i = 9
    while i > j:
        print(end=' ' * 8)
        i -= 1
    a = j
    while 0 < a <= 9:
        print('{}*{}={:<3}'.format(a, j, a * j), end=' ')
        a -= 1
    j -= 1
    print()




